package com.lianniu.mgr.orderManage.service;

import com.lianniu.mgr.base.BaseResult;
import com.lianniu.mgr.orderManage.vo.OrderConditionVo;
import com.lianniu.mgr.orderManage.vo.OrderDetailVo;
import com.lianniu.mgr.orderManage.vo.OrderInfoVo;
import com.lianniu.mgr.orderManage.vo.ShipmentVo;
import com.lianniu.mgr.pagination.PaginationInfo;

public interface IOrderManageService {

  public BaseResult getOrderListForPage(OrderConditionVo condition, PaginationInfo paginationInfo) ;
  
  /**
   * @Title: getOrderById 
   * @Description: 根据订单ID获取orderinfo
   * @author: Dylan
   * @param orderId
   * @return
   * @return: OrderInfoVo   * @date: 2016年7月12日 下午3:41:02

   */
  public BaseResult getOrderById(String orderId);
 /**
  * @Title: shipment 
  * @Description: 后台发货
  * @author: lzz
  * @param ship
  * @date: 2016年11月24日 下午4:19:19 
  * @return: BaseResult
  */
  
  BaseResult shipment(ShipmentVo ship);

    /**
     * @Title: modifyOrder
     * @Description: 更新订单
     * @author: alex
     * @param orderInfovo
     * @return
     * @date: 2017年5月10日 上午9:25:12
     * @return: BaseResult
     */
    public BaseResult modifyOrder(OrderInfoVo orderInfovo,OrderDetailVo orderDetailVo);

   /**
    * @Title: modifyOrder
    * @Description: 更新业务员
    * @author: alex
    * @param orderId
    * @return
    * @date: 2017年5月10日 上午9:25:12
    * @return: BaseResult
    */
   public BaseResult modifyStaff(String orderId,String staff);

  /**
   * @Title: modifyOrder
   * @Description: 更新业务员
   * @author: alex
   * @param orderId
   * @return
   * @date: 2017年5月10日 上午9:25:12
   * @return: BaseResult
   */
  public BaseResult modifyComment(String orderId,String commResult,String comment);

    /**
     * @Title: updateOrderStatus
     * @Description: 更新订单状态
     * @author: alex
     * @param orderID
     * @return
     * @date: 2017年5月10日 上午9:25:12
     * @return: BaseResult
     */
    public BaseResult updateOrderStatus(String orderID,String status);

    public BaseResult updateOrderStatus(String orderID, String status,String cancelReason);

    //更新找货完成状态
    public BaseResult updateOrderSF(String orderId,String status,String searchFinishedRemark,String searchFinishedImg1,String searchFinishedImg2);

    //updateOrderFA
    //更新付款完成状态
    public BaseResult updateOrderFA(String orderId,String status,String paidRemark,String paidImgUrl1,String paidImgUrl2);

    //更新发货完成状态
    public BaseResult updateOrderDL(String orderId,String status,String deliveRemark,String deliveImgUrl1,String deliveImgUrl2);

    //更新签收完成状态
    public BaseResult updateOrderCF(String orderId,String status,String confirmRemark,String confirmImg1,String confirmImg2);

    /**
     * @Title: updateOrderDelFlag
     * @Description: 更新订单删除标记
     * @author: alex
     * @param orderID
     * @return
     * @date: 2017年5月10日 上午9:25:12
     * @return: BaseResult
     */
    public BaseResult updateOrderDelFlag(String orderID);

}
